/*
 * DIM-SUM操作系统 - 每CPU变量
 *
 * Copyright (C) 2022 国科础石(重庆)软件有限公司
 *
 * 作者: Dong Peng <w-pengdong@kernelsoft.com>
 *
 * License terms: GNU General Public License (GPL) version 3
 *
 */

#ifndef __ASM_PERCPU_H
#define __ASM_PERCPU_H

static inline void set_this_cpu_offset(unsigned long off)
{
	/**
	 * 目前没有使用riscv的某个寄存器来保存per_cpu_offset 
	 * 即每CPU变量内存块对应的偏移
	 */
	//TO_DO
}



/**
 * 客官，看清楚了
 * this_cpu_offset后面没有加()
 */
#define this_cpu_offset __this_cpu_offset()
#include <asm-generic/percpu.h>

static inline unsigned long __this_cpu_offset(void)
{
	return per_cpu_offset(smp_processor_id());
}

#endif /* __ASM_PERCPU_H */
